package com.sufjan.secret.util;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUtil {
	
	
	/**
	 * <p>
	 * 将sql Date 类型转为 util Date 类型
	 * <p>
	 * @param sqlDate 
	 * @return
	 */
	public static java.util.Date dateSqlToUtil(java.sql.Date sqlDate){
		return new java.util.Date(sqlDate.getTime());
	}
	
	/**
	 * <p>
	 * 将util Date 类型转为 sql Date 类型
	 * <p>
	 * @param utilDate 
	 * @return
	 */
	public static java.sql.Date dateUtilToSql(java.util.Date utilDate){
		return new java.sql.Date(utilDate.getTime());
	}
	
	
	/**
	 * <p>
	 * Description: 按格式“yyyy-MM-dd HH:mm:ss”返回当天日期的字符串形式
	 * <p>
	 * 
	 * @return 日期格式字符串
	 * @author zhenghuiqiang 2011-12-30
	 */
	public static String getCurrentTimeString() {
		SimpleDateFormat dateFormat = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");
		return dateFormat.format(new Date());

	}
	/**
	 * <p>
	 * Description: 按格式“MM-dd-yyyy”返回当天日期的字符串形式
	 * <p>
	 * 
	 * @return 日期格式字符串
	 * @author zhenghuiqiang 2011-12-30
	 */
	public static String getCurrentTimeStr() {
		SimpleDateFormat dateFormat = new SimpleDateFormat(
				"yyyy-MM-dd HH-mm-ss");
		return dateFormat.format(new Date());
	}
	/**
	 * 字符串转换成日期
	 * 
	 * @param str
	 * @return date
	 */
	public static Date StrToDate(String str) {

		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Date date = null;

		try {
			date = format.parse(str);
		} catch (java.text.ParseException e) {
			e.printStackTrace();
		}
		return date;
	}
	/**
	 * 将时间格式为yyyy-MM-dd HH:mm:ss转换成20120227150931字符串输出
	 * @param str
	 * @return
	 */
	public static String strToDatestr(Date date)
	{
		String dateStr = null;
		SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
		dateStr = format.format(date);
		return dateStr;
	}
	/**
	 * 将时间格式为yyyy-MM-dd HH:mm:ss转换成20120227150931字符串输出
	 * @param str
	 * @return
	 */
	public static String dateToStr(Date date)
	{
		SimpleDateFormat dateFormat = new SimpleDateFormat(
				"yyyy-MM-dd HH:mm:ss");
		return dateFormat.format(date);
	}
	/**
	 *判断当前时间是否在时间date之后
	 * @param date
	 * @return
	 */
	public static boolean isDateBefore(String date){
		   try 
		   {
			     Date nowDate = new Date();
				 DateFormat df = DateFormat.getDateTimeInstance();
				 return nowDate.after(df.parse(date));
			} catch (java.text.ParseException e) 
			{
				e.printStackTrace();
			}
			return false;
		}
}
